1. Field of the Invention
This invention relates to a control apparatus for a scanner/printer having functions of interpreting page description languages supplied from a host and of controlling a scanner for scanning original images.
In addition, this invention relates to a server for a scanner/printer connected to a host through a network.
2. Related Background Art
It is common to interconnect computers and other peripherals as a network, allowing users to share the same software, printers and other devices. There is, however, no idea of a xe2x80x9cnetwork scannerxe2x80x9d of which the scanning operation is controlled by a remote host in a network. A host needing to received an image could read the image through a scanner connected to the host itself. Alternatively, the image may be transferred, through the network, from another scanner to the host issuing a request.
Thus, to print the image scanned by the scanner after being synthesized with other characters and graphic information, the image scanned by the scanner connected to the host or supplied from another host is generally stored in a memory as a file. The file is then supplied to a printer or a server directly or through the network together with characters and a page description language indicating the graphic information, i.e., describing how an image will be printed on a page.
Recently, a digital scanner/printer may sometimes be connected to the host. In the system architecture of the type described, the scanned image is communicated between the digital scanner/printer and the host, which results in unnecessary transmission of data. In this respect, a processor for synthesizing images may be provided between the host and the digital scanner/printer. However, it is necessary in any case to store the scanned image in a memory of the host or the processor in addition to the synthesized image disadvantageously using a memory having a large capacity. In addition, the host is required to produce commands for controlling the scanner apart from commands for controlling the printer with the respective command languages, which degrades the operability of the host.
Further, there has been no device for transferring to the host the image produced by synthesizing an image scanned by the scanner with an image described in the page description language, thereby allowing the host to process the synthesized image. In this respect, the host may comprise means (an interpreter) for interpreting the page description language to obtain the image produced by synthesizing the image scanned by the scanner with the image described by the page description language. The host comprising such an interpreter could synthesize the image described in the page description language with the image scanned by the scanner. However, this method requires a memory for storing image data supplied from the scanner in addition to the memories required for the interpreter and a work-area thereof. It is especially serious when a full-colored image is directed to synthesis because a memory having an extremely large capacity should be used. In addition, an interpreter should be implemented in the printer side to ensure a normal printing operation. In other words, an interpreter for the language being resident in a printer makes it possible to send short programs, instead of huge volumes of pixel data, to the printer. As a result, the host and the associated printer have similar interpreters, making the construction for the image synthesizing operation wasted or useless.
To meet an image input/output request supplied from host computers managed by different operating systems, the server should have a plurality of interpreters for carrying out data communication processing matched to the respective operating systems. This imposes on the server the serious burden of data processing, making the device expensive.
A plurality of host computers may be connected to each other in the network to drive and control a plurality of input/output devices. In this event, each host computer independently produces an image input/output processing request irregularly, so that two or more input/output devices may produce the requests at the same time. It is, however, impossible to carry out a succeeding printing or scanning job in preference to, if any, a preceding printing or scanning job in a wait state. As a result, the efficiency of the image input/output processing will be degraded.
Color input/output devices of the type described are relatively expensive as compared with a monochrome one. In addition, an interface device for interfacing the color input/output device with the host costs much more than the one for interfacing the monochrome device with the same host. The major cause of this is that processing of a color image results in a huge amount of data. Further, the data should be abstracted in a certain method to transmit the color image. More particularly, image and character data should be coded while graphic data should be vectorized, which contributes to abstract the data as much as possible to reduce the amount of data and the coded or vectorized data can be described in a form independent of the device where it is used.
On the other hand, a device that receives the data described in the above mentioned form is required to have an interface to convert the received data into a bit image that is optimum for the receiving device itself. To provide such an interface is disadvantageous in that the cost of the entire system will be increased. It is especially true when a color input/output device is used because a host computer having a color interface and a color input/output device becomes extremely expensive.
A network may comprise a plurality of personal computers and one scanner/printer. If the scanner/printer is free to be accessed from these personal computers, it becomes impossible to meet the demand of a user who wants to use specifically the scanner/printer connected thereto in the network. A particular user may have to wait for a long period before his request of access to the scanner/printer is finally accepted.
The scanner/printer may comprise means for memorizing image input/output commands supplied from a plurality of users. When the scanner/printer is in a ready state and no processing is carried out with commands designating a particular printer or image input/output device (scanner) being stored in the memorizing means of the scanner/printer, the designated printer or scanner may be disabled due to paper jam in the printer or burning out of an exposure lamp of the scanner. Conventional image input/output devices having a communication function carry out scanning and printing operation according to the order of accepting the multiple accesses supplied from the hosts. Accordingly, the input/output processing is not restarted until the designated device is rest from the trouble even if there is one or more enabled input/output devices the waiting state. The only reason any other enabled devices are not operated is that they are not the destination at that time. Such xe2x80x9cfirst-access first-executionxe2x80x9d degrades the operational efficiency of the input/output devices.
Various other problems of the conventional input/output devices lie in printers. More particularly, a printer is a device that merely produces images on paper or film according to the received data described in the page description language. This means that it is not necessarily possible to obtain a fine and satisfactory result. For example, the image data generated by an image generating unit may first be compressed and stored in an image memory. In this event, the image memory stores the data of one page that is extended later upon printing. In some cases, it may be worth providing the image memory in the printer and trying to compress the data. However, the capacity of the memory is limited and the image data is thus compressed at a higher compression rate than required. This causes degradation of the image. The degradation could be minimized when the image is compressed at the compression rate optimum for the memory. It is, however, difficult for the Joint Photographic Experts Group (JPEG) or the most popular and comprehensive continuous tone, still-frame color compression standard to estimate the amount of compressed data before compression of it when there is no information regarding the color image. Accordingly, the data is compressed at the excessively high compression rate to ensure positive storage of the compressed data, which degrades the quality of the resultant image.
Many printers available in the current marketplace are bilevel and able to produce image information generated by the image generating unit. Such printers produce just two intensity levels, so that it is not necessarily possible to obtain a satisfactory result of printing at a high speed. For example, an error diffusion algorithm can be used advantageously for printing a document containing relatively many characters and graphic patterns. With the error diffusion algorithm, boundaries and lines are contrasted relatively clearly. On the other hand, a dither matrix is sometimes preferable to represent a continuous-tone image because the time required for digitization becomes relatively shorter with this method. However, a conventional image processing unit merely produces the image data and thus the associated printer produces the image according to a single digitization method regardless of the type of the image.
It is not necessarily possible to obtain a satisfactory result of printing even when using a printer that comprises an image output unit capable of color conversion on the image generated by the image generating unit. It is preferable to apply color conversion allowing sharp edges and configurations of the black regions for a document containing many characters and graphic patterns. On the other hand, it is preferable to use color conversion to reduce the black regions for a document containing relatively many images. However, the image output unit of a conventional printer merely produces the image according to a single digitization method regardless of the type of the image.
The conventional image output devices are thus disadvantageous in terms of flexibility.
The present invention is directed to overcome the above mentioned problems and an object thereof is to synthesize on a server bitmap data obtained according to the data described in a page description language and transferred from a host through a network with image data scanned by a scanner.
Another object of the present invention is to provide a server capable of using readily synthesized image data that is memorized only in such a memory that could not be achieved by memory resources in a host.
It is yet another object of the present invention to provide a server whose function can be performed without using an expensive extended memory in each host in the network and without using means for interpreting the page description languages.
According to the present invention, a server is connected to at least one host and a scanner in a network, the server comprising interface means for connecting the server to a scanner and a printer; processing means for converting data supplied from the host into bitmap data, the data being described in a page description language; and synthesizing means for synthesizing, as synthesized image data, the bitmap data with scanned data supplied from a scanner through the interface means, whereby the synthesized image data is allowed to be transmitted to the host through the network.
In addition, according to the present invention, a server further comprises compression means for compressing, as compressed image data, the synthesized image data, whereby the compressed image data is allowed to be transmitted to the host through the network.
When it is instructed to synthesize the data described in the page description language and supplied from the host through the network with the scanned data supplied from the scanner, the synthesizing means synthesizes the bitmap data converted by the processing means with the scanned data supplied from the scanner, whereby the synthesized image data is allowed to be transmitted to the host. As a result, it becomes possible to use readily the synthesized image data obtained by synthesizing the data described in the page description language and supplied from the host through the network with the scanned data supplied from the scanner without imposing on the host the serious burden of memory extension.
Further, it is possible to compress by the compression means the image data synthesized by the synthesizing means and to transmit the compressed image data to the host in the network, which allows the host to obtain during a short period the synthesized image data of large capacity synthesized in the server and to use readily the same data.
According to a preferred aspect of the present invention, the server comprises first image output controlling means for controlling the output of first, second and third image information to each input/output device. The first image information is supplied from the host to the first image output controlling means through the network. The second image information is read through the input/output device according to the commands supplied from the host. The third image information is a combination of the first and second image information combined according to the commands supplied from the host. As a result, it becomes possible to produce directly from each input/output device any one of first through third image information according to the commands supplied from the host. In addition, the server comprises a second image output controlling means for controlling output of the second image information to a first host designated through the network or to a second host designated by the first host. This makes it possible to transfer directly the second image information to other hosts including the transmitting host itself. In this event, the second image information is taken in the server from each input/output device according to the commands supplied from the host.
According to another aspect of the present invention, a first password previously registered in the server is compared with a second password supplied from the host connected thereto in the network. Execution of a scanning operation and a printing operation will be allowed or prohibited, based on the comparison result, in the input/output device designated by the host. The scanning operation and the printing operation issued by a particular group of users can thus be executed in preference to other operations.
According to yet another aspect of the present invention, the server further comprises data memorizing means, notifying means and changing means. When the notifying means notifies the destined input/output device of the server of scanning and printing states with the data supplied from the host being memorized in the data memorizing means for the destined input/output device(s) and an input/output device changing command is returned from the host and received by the server, the changing means analyzes the input/output device changing command returned from the host to change the destined input/output device designated by the host into a desired input/output device. As a result, it becomes possible to compensate the input/output processing directed to the input/output device in a disable state with the data processing carried out by the desired input/output device.
According to still another aspect of the present invention, the server analyzes image data and additional information supplied from the image generating means to carry out data processing optimized for the image data received by image processing means. The input/output device supplies the image to a recording medium according to processed data supplied from the image processing means. Thus, it becomes possible to produce image data that will be satisfactorily produced from the input/output device.
According to a further aspect of the present invention, the server comprises data analyzing means, pixel data generating means, memorizing means, data extraction means, an additional information memory and image output means. The analyzing means analyzes color image information in response to reception of the color image information supplied from the host through the network. The pixel data generating means generates pixel data for each color according to the result of analysis. The pixel data are memorized in the memorizing means. The data extraction means then analyzes the pixel data for each color memorized in the memorizing means to extract black regions of the color image. An additional information corresponding to the black regions extracted by the data extraction means is memorized in the additional information memory. The image output means produces an image while looking up the pixel data and the additional information corresponding to the pixel data memorized. As a result, it becomes possible to make a contrast between black and other colors in characters or graphic patterns contained in the color image.
In describing the gist of an aspect of this invention, the server is provided with a band memory where a memory area required for plotting an image of one page can be divided into a plurality of band areas. Analyzed are commands of a predetermined page description language for one page as a unit that are successively received from the hosts connected to the server in a predetermined network. Output band information is derived for each object to plot successively the objects in the corresponding band according to the output band information. A complex object can thus be produced effectively even when a memory capacity is relatively small.
In addition, according to the present invention, first color information is edited or read according to an image input/output command supplied from the host into second color image information based on predetermined commands in the page description language. The converted second color image information is used for communication between the input/output device(s) and the host(s) through the predetermined network. The second color image information received during the communication is analyzed and match-converted into inherent first image information suitable for the input/output device or the host. One interpreter can thus be commonly used among the users even when color image processing formats of the hosts differ from each other and data formats of the input/output devices are different from each other.
Further, the order of processing of a printing job or a scanning job of the input/output device is controlled based on a given priority according to the image input/output command supplied from the host. As a result, it becomes possible to manage arbitrarily the order of image input/output processing from the host.
These and other objects and features of the present invention will become more fully apparent from the following description and appended claims taken in conjunction with the accompanying drawings.